from 工程.凌云项目.MLS接收模块.基础配置.基础配置引用 import *

def MLS镜频抑制测试初始化():
    模块编号 = str(sys.UUTINFO[1])
    if gy参数.初始化标识 != 'MLS镜频抑制测试初始化'+模块编号:
        gy参数.初始化标识='MLS镜频抑制测试初始化'+模块编号
    else:
        return

    gy产品.模块控制.连接()
    gy仪器.频谱仪.连接()
    gy仪器.信号源.连接()
    gy产品.射频路由.连接()

    gy仪器.信号源.设置幅度(-100)
    gy仪器.信号源.调制开关('关')
    gy仪器.信号源.射频开关('开')
    gy仪器.频谱仪.设置扫频带宽(5e5)
    gy仪器.频谱仪.设置视频带宽自动()
    gy仪器.频谱仪.设置分析带宽自动()
    gy仪器.频谱仪.设置扫描时间自动()
    gy仪器.频谱仪.设置功率单位('DBM')
    gy仪器.频谱仪.设置参考幅度(15)
    gy仪器.频谱仪.设置触发源IMM()
    gy仪器.频谱仪.设置自动衰减()
    gy仪器.频谱仪.设置触发开关('开')
    gy仪器.频谱仪.设置中心频率(70e6)
    gy仪器.频谱仪.设置最大保持开关('关')
    gy仪器.频谱仪.设置内部增益开关(0)

    gy产品.射频路由.接通MLS频谱仪测试()
    print("MLS镜频抑制测试初始化")

def MLS镜频抑制(频点=5031):
    MLS镜频抑制测试初始化()

    频率=频点*1000000
    gy产品.模块控制.设置MLS频率(频点)
    gy仪器.信号源.设置频率(频率)
    gy仪器.信号源.设置幅度(-95 + gy参数.通道补偿['MLS'])

    gy方法.时间处理.延时(1)
    gy仪器.频谱仪.设置寻峰值()
    峰值 = gy仪器.频谱仪.读幅度()

    gy仪器.信号源.设置频率(频率-454.2e6)
    gy仪器.信号源.设置幅度(-95 + gy参数.通道补偿['MLS'] + 60)

    gy方法.时间处理.延时(1)
    gy仪器.频谱仪.设置寻峰值()
    镜频1 = gy仪器.频谱仪.读幅度()

    gy仪器.信号源.设置频率(367.1e6)
    gy仪器.信号源.设置幅度(-95 + gy参数.通道补偿['MLS'] + 60)

    gy方法.时间处理.延时(1)
    gy仪器.频谱仪.设置寻峰值()
    镜频2 = gy仪器.频谱仪.读幅度()

    镜频抑制1 = 峰值-镜频1 + 60
    镜频抑制2 = 峰值 - 镜频2 + 60
    gy方法.测试结果保存.结果保存(镜频抑制1, '镜频1')
    gy方法.测试结果保存.结果保存(镜频抑制2, '镜频2')

if __name__=='__main__':
    pass
    sys.UUTINFO = [0, 1]
    MLS镜频抑制()